d/rules: Tolerate minor differences in some reftests
authorSimon McVittie <smcv@debian.org>
Sat, 13 Feb 2021 23:33:30 +0000 (23:33 +0000)
committerSimon McVittie <smcv@debian.org>
Sat, 13 Feb 2021 23:33:30 +0000 (23:33 +0000)
debian/close-enough.keyfile [new file with mode: 0644]
debian/rules

diff --git a/debian/close-enough.keyfile b/debian/close-enough.keyfile
new file mode 100644 (file)
index 0000000..f3a214b
--- /dev/null
@@ -0,0 +1,5 @@
+[reftest]
+accepted-diff-level=1
+accepted-diff-pixels=50
+tolerated-diff-level=10
+tolerated-diff-pixels=100
index f93bc39bb0ce75b18acaa922057d4fa90babbf16..9ebe81891f8dbe1023c43804d305df727bd9a12b 100755 (executable)
@@ -194,6 +194,14 @@ $(info Architecture with qemu buildds detected, increasing test timeout a lot)
 test_timeout_multiplier = 20
 endif
 
+fuzzy_reftests = \
+       border-image-url \
+       label-attribute-preference \
+       label-wrap-justify \
+       pseudoclass-on-box \
+       quit-mnemonic \
+       $(NULL)
+
 # TODO: Known failures:
 # amd64: none
 # arm64: none
@@ -218,6 +226,10 @@ endif
 override_dh_auto_test:
 ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
        rm -f debian/tests-failed
+       set -e; for reftest in $(fuzzy_reftests); do \
+               cp debian/close-enough.keyfile \
+                       testsuite/reftests/$$reftest.keyfile; \
+       done
        # Mark reftests with known failures as non-fatal
        #touch testsuite/reftests/nonresizable-size.ui.known_fail
        #touch testsuite/reftests/window-show-contents-on-map.ui.known_fail
@@ -250,6 +262,9 @@ ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
        || touch debian/tests-failed
        tail -v -n +0 debian/build/deb/meson-logs/testlog-x11.txt
        debian/log-reftests.py
+       set -e; for reftest in $(fuzzy_reftests); do \
+               rm -f testsuite/reftests/$$reftest.keyfile; \
+       done
        if test -e debian/tests-failed; then exit 1; fi
 endif